package cn.wfu.rlrjds.jersey;

public class Main {
//	EasemobRestAPIFactory factory = ClientContext.getInstance()
//			.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//	IMUserAPI user = (IMUserAPI) factory
//			.newInstance(EasemobRestAPIFactory.USER_CLASS);
//
//	/**
//	 * 添加IMUser用户
//	 * 
//	 * @param args
//	 * @throws Exception
//	 */
//	@Test
//	public void testAddIMUser() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//		IMUserBody userBody = new IMUserBody("admin1", "123", "123");
//		user.createNewIMUserSingle(userBody);
//	}
//
//	/**
//	 * 批量添加用户
//	 */
//	@Test
//	public void testCreateNewIMUserBatch() {
//		List<IMUserBody> imUserBodies = new ArrayList<IMUserBody>();
//		IMUserBody userBody1 = new IMUserBody("wqwq", "e2wq", "qwqeq");
//		IMUserBody userBody2 = new IMUserBody("wqwq32", "e2wq", "qwqeq");
//		imUserBodies.add(userBody1);
//		imUserBodies.add(userBody2);
//		IMUsersBody usersBody = new IMUsersBody(imUserBodies);
//		user.createNewIMUserBatch(usersBody);
//	}
//
//	/**
//	 * 获取IMUser用户
//	 */
//	@Test
//	public void testGetIMUser() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//		ResponseWrapper imUsersByUserName = (ResponseWrapper) user
//				.getIMUsersByUserName("123");
//		System.out.println();
//		System.out.println(imUsersByUserName.getResponseBody());
//
//		UserBean userBean = GsonUtils.fromJson(imUsersByUserName
//				.getResponseBody().toString(), UserBean.class);
//
//		System.out.println(userBean.getAction());
//
//	}
//
//	/**
//	 * 批量获取IMuser用户
//	 */
//	@Test
//	public void testGetIMUsersBatch() {
//		ResponseWrapper imUsersBatch = (ResponseWrapper) user.getIMUsersBatch(
//				20L, "1");
//
//		Gson gson = new Gson();
//		UserBean userBean = gson.fromJson(imUsersBatch.getResponseBody()
//				.toString(), UserBean.class);
//
//		System.out.println(userBean.getEntities());
//
//	}
//
//	/**
//	 * 删除IMUser用户
//	 */
//	@Test
//	public void testDeleteIMUser() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//		ResponseWrapper imUsersByUserName = (ResponseWrapper) user
//				.deleteIMUserByUserName("456");
//		UserBean userBean = GsonUtils.fromJson(imUsersByUserName
//				.getResponseBody().toString(), UserBean.class);
//
//		System.out.println(userBean.getAction());
//
//	}
//
//	/**
//	 * 获取用户的在线状态
//	 */
//	@Test
//	public void testGetUserStatus() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//		ResponseWrapper responseWrapper = (ResponseWrapper) user
//				.getIMUserStatus("admin2");
//		if (200 == responseWrapper.getResponseStatus()) {
//			JSONObject jsonObject = new JSONObject(responseWrapper
//					.getResponseBody().toString());
//			JSONObject jsonObject2 = jsonObject.getJSONObject("data");
//			System.out.println(jsonObject2.get("admin2"));
//		}
//
//	}
//
//	/**
//	 * 消息推送
//	 */
//	@Test
//	public void test() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		SendMessageAPI message = (SendMessageAPI) factory
//				.newInstance(EasemobRestAPIFactory.SEND_MESSAGE_CLASS);
//		Map<String, String> ext = new HashMap<String, String>();
//		Msg msg = new Msg();
//		msg.setMsg("xioama");
//		msg.setType("txt");
//		String str = GsonUtils.toJson(msg);
//
//		message.sendMessage(new TextMessageBody("users",
//				new String[] { "123" }, "admin", null, GsonUtils.toJson(msg)));
//		// System.out.println(GsonUtils.toJson(msg));
//		// JerseyRestAPIInvoker apiInvoker = new JerseyRestAPIInvoker();
//		// HeaderWrapper header = new HeaderWrapper();
//		// header.addHeader("Content-Type", "application/json");
//		// BodyWrapper body = new AuthTokenBody("YXA6VM4bkE7wEeahAu0CQ78wWA",
//		// "YXA6YQzsSi450DSJg_0rELje44sCjtE");
//		// QueryWrapper qq = new QueryWrapper();
//		// ResponseWrapper token = apiInvoker.sendRequest("POST",
//		// "https://a1.easemob.com/934973491/934973491/token", header,
//		// body, null);
//		//
//		// Token token2 = GsonUtils.fromJson(token.getResponseBody().toString(),
//		// Token.class);
//		// header.addAuthorization(token2.getAccess_token());
//		// apiInvoker.sendRequest("POST",
//		// "https://a1.easemob.com/934973491/934973491/messages", header,
//		// new TextMessageBody("users", new String[] { "123" }, "", null,
//		// "{\"type\" :\"txt\",\"msg\": \"hello from rest\"}"),
//		// null);
//
//	}
//
//	/**
//	 * 更改用户名
//	 */
//	@Test
//	public void testModifyIMUserNickNameWithAdminToken() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//
//		ModifyNicknameBody userBody = new ModifyNicknameBody("李四");
//		user.modifyIMUserNickNameWithAdminToken("admin4", userBody);
//
//	}
//
//	/**
//	 * 修改密码
//	 */
//	@Test
//	public void testModifyIMUserNickNameWithAdminToken1() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//
//		ResetPasswordBody userBody = new ResetPasswordBody("456");
//		user.modifyIMUserPasswordWithAdminToken("admin4", userBody);
//
//	}
//
//	/**
//	 * 给IMUser用户添加好友
//	 * 
//	 */
//	@Test
//	public void testAddFriendSingle() {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//		user.addFriendSingle("123", "456");
//	}
//
//	public static void main(String[] args) throws Exception {
//		EasemobRestAPIFactory factory = ClientContext.getInstance()
//				.init(ClientContext.INIT_FROM_PROPERTIES).getAPIFactory();
//
//		IMUserAPI user = (IMUserAPI) factory
//				.newInstance(EasemobRestAPIFactory.USER_CLASS);
//
//		// ChatMessageAPI chat = (ChatMessageAPI) factory
//		// .newInstance(EasemobRestAPIFactory.MESSAGE_CLASS);
//		// FileAPI file = (FileAPI) factory
//		// .newInstance(EasemobRestAPIFactory.FILE_CLASS);
//		// SendMessageAPI message = (SendMessageAPI) factory
//		// .newInstance(EasemobRestAPIFactory.SEND_MESSAGE_CLASS);
//		// ChatGroupAPI chatgroup = (ChatGroupAPI) factory
//		// .newInstance(EasemobRestAPIFactory.CHATGROUP_CLASS);
//		// ChatRoomAPI chatroom = (ChatRoomAPI) factory
//		// .newInstance(EasemobRestAPIFactory.CHATROOM_CLASS);
//		//
//		// ResponseWrapper fileResponse = (ResponseWrapper) file
//		// .uploadFile(new File("d:/logo.png"));
//		// String uuid = ((ObjectNode) fileResponse.getResponseBody())
//		// .get("entities").get(0).get("uuid").asText();
//		// String shareSecret = ((ObjectNode) fileResponse.getResponseBody())
//		// .get("entities").get(0).get("share-secret").asText();
//		// InputStream in = (InputStream) ((ResponseWrapper) file.downloadFile(
//		// uuid, shareSecret, false)).getResponseBody();
//		// FileOutputStream fos = new FileOutputStream("d:/logo1.png");
//		// byte[] buffer = new byte[1024];
//		// int len1 = 0;
//		// while ((len1 = in.read(buffer)) != -1) {
//		// fos.write(buffer, 0, len1);
//		// }
//		// fos.close();
//
//		// Create a IM user
//		// for (int i = 0; i < 30; i++) {
//		//
//		// BodyWrapper userBody = new IMUserBody("20" + i, "789", "789");
//		// user.createNewIMUserSingle(userBody);
//		// }
//
//		// Create some IM users
//		// List<IMUserBody> users = new ArrayList<IMUserBody>();
//		// users.add(new IMUserBody("User002", "123456", null));
//		// users.add(new IMUserBody("User003", "123456", null));
//		// BodyWrapper usersBody = new IMUsersBody(users);
//		// user.createNewIMUserBatch(usersBody);
//
//		// Get a IM user
//
//		ResponseWrapper imUsersByUserName = (ResponseWrapper) user
//				.getIMUsersByUserName("123");
//		System.out.println();
//		System.out.println(imUsersByUserName.getResponseBody());
//		/*
//		 * // Get a fake user user.getIMUsersByUserName("FakeUser001");
//		 * 
//		 * // Get 12 users user.getIMUsersBatch(null, null); //
//		 */
//
//		// HttpClientRestAPIInvoker apiInvoker = new HttpClientRestAPIInvoker();
//		// HeaderWrapper header = new HeaderWrapper();
//		// header.addHeader("Content-Type", "application/json");
//		// BodyWrapper body = new AuthTokenBody("YXA6VM4bkE7wEeahAu0CQ78wWA",
//		// "YXA6YQzsSi450DSJg_0rELje44sCjtE");
//		// // QueryWrapper qq = new QueryWrapper();
//		// ResponseWrapper token = apiInvoker.sendRequest("POST",
//		// "https://a1.easemob.com/934973491/934973491/token", header,
//		// body, null);
//		// // System.out.println();
//		// // System.out.println();
//		// Gson gson = new Gson();
//		// Token token2 = gson.fromJson(token.getResponseBody().toString(),
//		// Token.class);
//		//
//		// ResponseWrapper user2 = apiInvoker.sendRequest("GET",
//		// "https://a1.easemob.com/934973491/934973491/users/123",
//		// new HeaderWrapper().addAuthorization(token2.getAccess_token()),
//		// null, null);
//		// System.out.println(user2.getResponseBody());
//		//
//		// System.out.println(token2.getAccess_token());
//		// apiInvoker.sendRequest("GET",
//		// "https://a1.easemob.com/934973491/934973491/users?limit=20",
//		// new HeaderWrapper().addAuthorization(token2.getAccess_token()),
//		// null, null);
//		//
//		// System.out.println("qe3qr3r32");
//		/*
//		 * for (int i = 3; i < 6; i = i + 2) {
//		 * 
//		 * apiInvoker .sendRequest( "POST",
//		 * "https://a1.easemob.com/934973491/934973491/users/User101/contacts/users/User10"
//		 * + i, new HeaderWrapper().addAuthorization(token2 .getAccess_token()),
//		 * null, null); }
//		 */
//
//	}
}
